'\" t
.\"
.\" Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
.\"
.\" This man page created by Oracle to provide a reference to the
.\" Info format documentation for guile provided with the distribution.
.\"
.TH guile-config 1 "26 May 2008"
.SH NAME
guile-config \- a tool designed to help guile users to get guile
 configuration information 
.SH SYNOPSIS
/usr/bin/guile-config [OPTIONS]
.SH DESCRIPTION
On most systems, you should not need to tell the compiler and linker
explicitly where they can find `libguile.h' and `libguile'.  When Guile
has been installed in a peculiar way, or when you are on a peculiar
system, things might not be so easy and you might need to pass
additional `-I' or `-L' options to the compiler.  Guile provides the
utility program `guile-config' to help you find the right values for
these options.  You would typically run `guile-config' during the
configuration phase of your program and use the obtained information in
the Makefile.
.SH OPTIONS
.I guile-config link

Print the linker command-line flags necessary to link against libguile, and
 any other libraries it requires.

.I guile-config compile

Print C compiler flags for compiling code that uses Guile. This includes
any `-I' flags needed to find Guile's header files.

.I guile-config info [VAR]

Display the value of the Makefile variable VAR used when Guile was built. 
If VAR is omitted, display all Makefile variables. Use this command to find 
out where Guile was installed, where it will look for Scheme code at run-time,
and so on.

.SH EXAMPLES
You can use guile-config for a Scheme program:
.LP
    (use-modules (scripts guile-config))
    (guile-config . args)       => string
    (guile-config/split . args) => list of strings
.LP
ARGS is one of the "commands" above, such as "info" or "compile",
followed by an additional optional specifier.  Either element of
ARGS can be a symbol or a string.  For example, here are two sets
of equivalent invocations:

    (guile-config 'info 'pkgdatadir) 
    (guile-config 'info "pkgdatadir") 
    (guile-config "info" 'pkgdatadir)
    (guile-config "info" "pkgdatadir")
.LP	
    (guile-config 'compile)
    (guile-config "compile")

These procedures basically capture the output as if guile-config
were invoked as a command from the shell.  The former discards
the final newline.  The latter additionally discards whitespace,
and always returns a list (sometimes of length 1).

Behavior is undefined for null ARGS or unrecognized commands.
.PD
